Wireless data communication system and method

ABSTRACT

A data communication system including a least one encoder and one decoder. The encoder encodes a received input signal into encoded output data. The data communication system includes a data communication network coupled to at least one encoder, wherein the data communication network communicates the encoded output data from the encoder to the decoder. The decoder decodes the encoded output data to generate a rendition of the input signal. The system is characterized in that the data communication network is configured to function according to joint source channel coding (JSCC). Moreover, the encoder and the decoder are configured to employ an hierarchical data structure for representing data to be communicated from the encoder to the decoder.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of and priority to UK Patent Application No. 2007773.1, filed May 25, 2020, the entire disclosure of which is incorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates to wireless data communication systems, for example to wireless data communication systems that communicate image or video data when in operation. Moreover, the present disclosure relates to methods of (namely methods for) using aforesaid wireless data communication systems to communicate image or video data. Furthermore, the present disclosure relates to a computer program product comprising a non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions being executable by a computerized device comprising processing hardware to execute the aforesaid methods.

BACKGROUND

It is well known to communicate image and video data via wireless communication links, for example via satellite distribution of video content to domestic satellite receivers whose antennae are mounted to exterior walls of domestic premises (so-called “satellite TV”). Moreover, various data formats are employed when communicating data via the wireless communication links; for example, data formats such as H.264, MPEG2 and MPEG4 are often employed.

A technical problem arises when the aforesaid wireless communication links are more spatially local to a given region, and where the wireless communication links include various intermediate relay nodes (for example, wireless peer-to-peer networks). Problems such as wireless signal fading, ghosting due to signal reflection and interference from extraneous wireless radiation emitters can cause a much high bit error rate than encountered with aforesaid satellite data communication links. Such spatially local wireless communication links are also susceptible to having operating parameters that temporally dynamically vary, especially when sources of wireless signals are mobile, for example are vehicle-mounted or are airborne.

Companies specializing in conveying image data via wireless data communication links are known, for example a company Amimon Ltd., based in Israel. In a patent application WO2019/220433A1 (“Joint Source Channel Coding with H.264 Video Compression”; Applicant Amimon Ltd. (IL)), there is disclosed a wireless video transmission system comprising:

a coarse compression module to compress a video frame and to generate coarse data of the video frame;

a coarse decompression module to generate a coarse frame information from the coarse data;

a distortions extractor to generate coarse distortions from the coarse frame information and from the video frame;

a refinement data encoder to generate refinement data from the coarse distortions based on the coarse frame information; and

a data combining and modulation module to combine and transmit the coarse data and the refinement data.

It is known that wireless video transmission systems which combine a use of joint source channel coding (JSCC) with known compression block techniques including compression standards such as, for example, H.265, potentially suffer from bandwidth overhead. For example, a system that combines H.265 data with “analog” refinement data is susceptible to employing “coarse” bins and “fine” bins where the coarse bins are used for sending H.265 data (including interframe prediction) and the fine bins are used for sending the data for memoryless refinement of the received image. The analog refinement potentially has video-content-dependent power, and potentially suffers from additive noise and therefore, it may be desired to apply a video-content-dependent gain to bring the transmitted power to the highest level available by hardware capabilities and the radio regulation. However, a drawback of using content-dependent gain is that the gain should be conveyed to the receiver, and the message which describes that gain, creates a bandwidth overhead. Video-content-dependent gain may optionally be applied to single blocks (that is, each block will have a different gain), or to group of blocks (that is, each group will have different gain, but all the blocks in the group will have the same gain).

Bandwidth overhead in video transmission systems combining use of known compression block techniques (for example, H.264 or H.265) with JSCC may be reduced, optionally eliminated, by utilizing information associated with the coarse data to generate control data for the refinement encoder, where the refinement encoder generates refinement data which may be transmitted to a video receiver for memoryless refinement of a video image. The transmission side may include a refinement encoder which may be adapted to perform a two-dimensional DCT transform on coarse distortions which may be in the form of error frames (in the pixel domain) or in the form of quantization errors of DCT taps generated from the coarse data to generate DCT taps for each block. The refinement encoder may additionally calculate the block energy to apply a gain to the coarse distortions DCT taps based on the power of the coarse DCT taps. Alternatively, the refinement encoder may estimate a probability density for the coarse DCT taps which may then be used to entropy encode the coarse distortions DCT taps. A compander may be used to apply non-linear gain to the DCT taps of the refinement encoder.

Implementations of JSCC are described in a technical publication “Handbook_Image_Video_Processing”, and in particular: “Chapter 1: Joint Source-Channel Coding for Video Communications” (authors Fan Zhai, Yiftach Eisenberg, and Aggelos K. Katsaggelos) http://users.eecs.northwestern.edu/˜fzhai/publications/Handbook_Image_Video_Processing_bookchapter.pdf

However, such known approaches based on JSCC do not provide a sufficiently low latency performance for many applications of use, that require substantially immediate image communication from a given source to a given recipient. Although JSCC seeks to combine source data compression with transmission channel compression and forward error correction (FEC) functionality to provide improved data transmission with less errors when transmission channel dropout, fading and interference are likely to be encountered, it is desirable to provide a yet further improved performance to cope with performance requirements for many applications of use situations.

SUMMARY

The present disclosure seeks to provide an improved an improved data communication system that are less affected by objective technical problems as described in the foregoing.

According to a first aspect, there is provided a data communication system including a least one encoder and at least one decoder,

wherein the at least one encoder, when in operation, encodes an input signal received thereat into encoded output data;

wherein the data communication system includes a data communication network that is coupled to at least one encoder, wherein the data communication network, when in operation, communicates the encoded output data from the at least one encoder to the at least one decoder;

wherein the at least one decoder, when in operation, decodes the encoded output data to generate a rendition of the input signal,

characterized in that

the data communication network is configured to function according to joint source channel coding (JSCC);

the encoder and the decoder are configured to employ an hierarchical data structure for representing data to be communicated from the at least one encoder to the at least one decoder, wherein the hierarchical data structure includes a base layer and one or more enhancement layers with associated residual data, wherein the base layer is capable of providing a coarse rendition of the input signal at the at least one decoder, and the one or more enhancement layers and their associated residual data are useable when received at the least one decoder to enhance the coarse rendition to render the input signal at a high level of quality than the coarse rendition; and

the at least one encoder is operable selectively to drop sending parts of data of the one or more enhancement layers and their associated residual data in response bandwidth limitations, ghosting, interference and/or data errors arising in the data communication network.

The invention is of advantage in that using a hierarchical structure to represent data in the encoded output data communicated pursuant to JSCC from the at least one decoder to the at least one decoder is able to render the system better able to cope with signal fading, data corruption, data loss, ghosting and other types of data degradation arising in the data communication network.

Optionally, in the data communication system, the at least one encoder is configured to send base layer data of a given image frame to the at least one decoder to decode concurrently with the at least one encoder computing enhancement layer data of the given image frame to send subsequently to the at least one decoder, thereby reducing a latency of data communication arising when communicating from the at least one encoder to the at least one decoder.

Optionally, in the data communication system, the at least one encoder is configured to drop sending enhancement layer data and resend base layer data of a given image frame in an event that a first transmission of the base layer data of the given image frame is corrupted when transmitted from the at least one encoder to the at least one decoder.

Optionally, the system is configured to spread data of a given Intra-frame of the input signal into a plurality of frame durations when communicated from the at least one encoder to the at least one decoder.

According to a second aspect, there is provided a method of operating a data communication system including a least one encoder and at least one decoder,

wherein the at least one encoder, when in operation, encodes an input signal received thereat into encoded output data;

wherein the data communication system includes a data communication network that is coupled to at least one encoder, wherein the data communication network, when in operation, communicates the encoded output data from the at least one encoder to the at least one decoder;

wherein the at least one decoder, when in operation, decodes the encoded output data to generate a rendition of the input signal,

characterized in that the method includes:

configuring the data communication network to function according to joint source channel coding (JSCC);

configuring the encoder and the decoder to employ an hierarchical data structure for representing data to be communicated from the at least one encoder to the at least one decoder, wherein the hierarchical data structure includes a base layer and one or more enhancement layers with associated residual data, wherein the base layer is capable of providing a coarse rendition of the input signal at the at least one decoder, and the one or more enhancement layers and their associated residual data are useable when received at the least one decoder to enhance the coarse rendition to render the input signal at a high level of quality than the coarse rendition; and

configuring the at least one encoder, when in operation, selectively to drop sending parts of data of the one or more enhancement layers and their associated residual data in response bandwidth limitations, ghosting, interference and/or data errors arising in the data communication network.

Optionally, the method further includes configuring the at least one encoder to send base layer data of a given image frame to the at least one decoder to decode concurrently with the at least one encoder computing enhancement layer data of the given image frame to send subsequently to the at least one decoder, thereby reducing a latency of data communication arising when communicating from the at least one encoder to the at least one decoder.

Optionally, the method further includes configuring at least one encoder to drop sending enhancement layer data and resend base layer data of a given image frame in an event that a first transmission of the base layer data of the given image frame is corrupted when transmitted from the at least one encoder to the at least one decoder.

Optionally, the method further includes configuring the system to spread data of a given Intra-frame of the input signal into a plurality of frame durations when communicated from the at least one encoder to the at least one decoder.

According to a third aspect, there is provided a computer program product comprising a non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions being executable by a computerized device comprising processing hardware to execute a method of the second aspect.

Additional aspects, advantages, features and objects of the present disclosure would be made apparent from the drawings and the detailed description of the illustrative embodiments construed in conjunction with the appended claims that follow.

It will be appreciated that features of the present disclosure are susceptible to being combined in various combinations without departing from the scope of the present disclosure as defined by the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The summary above, as well as the following detailed description of illustrative embodiments, is better understood when read in conjunction with the appended drawings. For the purpose of illustrating the present disclosure, exemplary constructions of the disclosure are shown in the drawings. However, the present disclosure is not limited to specific methods and instrumentalities disclosed herein. Moreover, those skilled in the art will understand that the drawings are not to scale. Wherever possible, like elements have been indicated by identical numbers.

Embodiments of the present disclosure will now be described, by way of example only, with reference to the following diagrams wherein:

FIG. 1 is a schematic illustration of a data structure employed to represent an image frame in LCEVC, wherein the data structure includes a base layer, and one or more enhancement layers; optionally, the one or more enhancement layers each include a plurality of sub-layers; by selectively omitting enhancement layers or sub-layers when LCEVC is employed in JSCC, bit-rate of data communicated from a given encoder to a given decoder can be conveniently dynamically varied to cope with transmission interferences, bandwidth limitations and ghosting effects, for example as encountered in wireless communication;

FIG. 2 is a schematic illustration of a data communication system including an encoder, a data communication network, for example implemented wirelessly via one or more wireless channels, for example a plurality of radio channels, and one or more decoders, for example a plurality of decoders; the system operates according to JSCC and a LCEVC data structure employing a hierarchical representation of image frames is employed when communicating data from the encoder to the one or more decoders; and

FIG. 3 is a schematic illustration of temporal overlapping employed in the data communication system of FIG. 2 to reduce an operating latency of the system.

In the accompanying drawings, an underlined number is employed to represent an item over which the underlined number is positioned or an item to which the underlined number is adjacent. A non-underlined number relates to an item identified by a line linking the non-underlined number to the item. When a number is non-underlined and accompanied by an associated arrow, the non-underlined number is used to identify a general item at which the arrow is pointing.

DETAILED DESCRIPTION OF EMBODIMENTS

The following detailed description illustrates embodiments of the present disclosure and ways in which they can be implemented. Although some modes of carrying out the present disclosure have been disclosed, those skilled in the art would recognize that other embodiments for carrying out or practising the present disclosure are also possible.

Low complexity enhancement video coding (LCEVC) is now well known through various published patent applications that hereby incorporated by reference:

-   -   PCT/IB2012/053660; PCT/IB2012/053722; PCT/IB2012/053723     -   PCT/IB2012/053725; PCT/IB2012/056689; PCT/IB2012/002286     -   PCT/IB2013/050486; PCT/EP2013/059833; PCT/IB2013/059847     -   PCT/IB2014/060716; PCT/GB2016/050632; PCT/GB2017/052631     -   PCT/GB2017/052632; PCT/GB2017/052633

LECVC employs a hierarchical structure to represent image data, wherein there is provided a base layer, together with one or more enhancement layers having associated therewith residual data. In an encoder, the base layer is generated by downsampling an input signal and then encoding the downsampled input signal to generate the base layer. Moreover, in the encoder the downsampled input signal is upsampled and subtracted from the input signal to generate enhancement layer data. Optionally, in the encoder, data for a plurality of enhancement layers can be generated, wherein each enhancement layer can have sub-layers relating to particular image parameters, for example luminosity and colour. Optionally, the downsampling and upsampling can employ mutually different functions, such that the downsampling is not merely an inverse of the upsampling; this enables entropy present in the residual data to be optimized for compression. In the encoder, or a subsequent unit to the encoder, the base layer data and the enhancement layer data is combined and then compressed to provide output data for transmission from the encoder to one or more decoders. Such transmission can occur, for example, via a wireless link, for example a wireless satellite data communication link.

In a LCECVC decoder, the output data is received and decoded to provide a rendition of the base layer. Thereafter, the one or more enhancement layers are decoded and their associated residual data is applied to the rendition of the base layer to enhance a quality of the base layer to a high level of quality, for example enhanced resolution, enhanced colour resolution and so forth.

The LCEVC encoder and the LCEVC decoder can be considered together as being a LCEVC codec. Such an LCEVC codec is of advantage in that it provides scalability; in other words, when communicating the output data from the encoder to the decoder, certain enhancement layers can be optionally omitted, and certain residual data can be omitted in order to provide dynamic bit-rate control to the output data communicated from the encoder to the decoder. Moreover, when operation of the codec is not lossless, for example as a result of employing quantization in the encoder when encoding image or video data, quantization parameters can be dynamically varied in order to provide bit-rate control to the output data. Such temporally dynamic operation of LCEVC makes it especially suitable for use in systems employing wireless communication, where a data transmission link from a source to a recipient can be temporally variable and subject to ghosting and interference. Thus, LCEVC used in a context of JSCC is able to provide enhanced performance on account of the flexible hierarchical manner in which LCEVC functions. Moreover, use of LCEVC in a context of JSCC is capable of providing a lower degree of latency, because, for a given image frame, the base layer data can be communicate firstly from the encoder to the decoder for the decoder to start decoding, while enhancement layer data is then communicated from the encoder to the decoder. By employing temporally overlapping communication of the layers of LCEVC from a given encoder to a given decoder, latency can be considerably reduced, for example as depicted in FIG. 1.

A combination of joint source channel coding (JSCC) and LCEVC, as described in the foregoing, has hitherto not been proposed. Likewise, a combination of JSCC and VC-6 has hitherto not been proposed. Such a combination allows a greater bit-rate control precision to be achieved when communicating data from a given encoder to a given decoder via a data communication link, for example a wireless data communication link. Selective dropping of layers in the LCEVC data structure allows for fine precision control of bitrate for example.

During transmission of the output data from a given encoder, or even when the output data is received at a given decoder, the enhancement provided by the one or more enhancement layers of LCEVC can be dropped, without need for retransmission of data packets associated with the dropped layers of LVEVC. When this happens, however, it is highly beneficial to implement a feedback loop signal to the given encoder, which must force an enhancement temporal buffer refresh for a following image frame (or an image frame subsequent thereto, if the signal arrives too late at the given encoder), in order to avoid ghosted/sticky residuals in the enhancement layers of LCEVC.

As aforementioned, data of the base layer can be transmitted from the given encoder to the given decoder, while data of the one or more corresponding enhancement layers is still being computed in the given encoder; this inherently gives priority to data packets of the base layer, which, if lost in transmission, can be retransmitted (optionally, at an expense of correspond enhancement layer data being dropped from transmission from the given encoder to the given decoder).

When communicating data from the given encoder to the given decoder, data associated with a given intra-frame (namely “I-frame”, namely a complete image frames from which other frames can be derived, for example from motion estimation implemented in the encoder and decoder) can be spread over a plurality of frames intervals in data communicated to the decoder; such an implementation reduces peak data rates when communicating from the given encoder to the given decoder. Such spreading worsens an overall average bitrate required to communicate from the given encoder to the given decoder, but it dramatically reduces the size of the I-frame, which is a big driver of buffers as well as overall latency within the aforesaid system of the present disclosure. However, achieving a low latency, for example less than 50 milliseconds (mS) is highly desirable in video conferencing systems, and in remotely-controlled robotics where a captured image is communicated to a remote location where, for example, an artificial intelligence cognitive engine AI engine processes the capture image to decide how to respond, for example by controlling actuators. If there is a high degree of latency, such remote control can function in an unstable or sluggish manner. In general, implementing JSCC using LCEVC is capable of reducing a data error rate occurring within the aforesaid system, and retransmission of enhancement layer packets can be potentially avoided.

Beneficially, when one or more enhancement layers, and/or one or more enhancement sub-layers are dropped, a subtle level of dithering is applied to at least partially reconstruct high frequencies that have been lost that would have otherwise being conveyed in these enhancement layers or sub-layers, for example to avoid visible aliasing at diagonal edges when the image is reconstructed and rendered at the given decoder. Such dithering is option done after encoding, by using a transmission system to intervene in a header of data to be sent from the given encoder to the given decoder; however, it will be appreciated that such a transmission system is employed to intervene in order to drop one or more enhancement layers or sub-layers in anyway. The transmission system beneficially signals a suitable dither strength/magnitude.

In the aforesaid system, it is much better to reduce the amount of enhancement data to be communicated on a given frame in order to retain control of quality rather than just forcing a reset; (such a reduction is also important in a situation where whole enhancement data is being dropped), so that it is feasible to adjust instantly a size of the enhancement data based on a given channel quality to be achieved, while always maintaining a base level of quality. Thus, in an event that communicating data of the base layer from the given encoder to the given decoder, it is beneficial to reduce a size of the enhancement data, which assists to reduce latency arising within the system.

In embodiments of the present disclosure, it is highly beneficial to have a least two mutually separate elements (namely base layer data in a first case, and one more enhancement layer data in a second case) where it is feasible to employ mutually different channel data-bit rates, and most importantly wherein it is feasible to adjust dynamically the channel rate and the underlining data bit rate together to maximize quality or minimize latency. For latency reduction purposes, it is desirable to send a maximum amount of data in a shortest amount of time in a “burst” that does not take a whole ‘video frame’ to send the data, otherwise relatively little latency reduction gain is achieved (apart from avoiding resend requests). Moreover, with aforesaid temporally overlapping of data transmission of hierarchically structured data as employed in LCEVC, it is feasible to allow more time for accommodating transmission a normal full frame codec would require, thereby enabling an increase in image rendition quality at the given decoder to achieved (namely effectively increases bitrate) without increasing latency.

One potential hierarchical coding algorithm that is optionally used in embodiments of the present disclosure is a proprietary Perseus™ Pro product from V-Nova International Ltd. (which has byte-stream format elements that allow for partial and parallel decoding, and that uses a static entropy decoding rather than an adaptive entropy decoding); a proprietary Perseus™ Pro product from V-Nova International Ltd is also described in the following US patent applications, which are hereby incorporated by reference:

-   -   Ser. Nos. 13/188,188, 13/188,201, 13/188,207, 13/188,220,         13/188,226, 13/352,944, 13/188,237, 13/303,554, 13/744,808,         13/893,665, 13/893,669, 13/894,417, 13/893,672, 13/893,677,         15/783,204, 15/779,193, 16/077,828, 16/103,784, 16/078,352,         16/126,939, 16/252,357, 16/252,362, 16/324,433, 16/324,431,         16/295,847, 16/295,851, 16/295,854

as well as in the following PCT patent applications, which are hereby incorporated by reference

-   -   PCT/GB2017/053716, PCT/EP2018/075603, PCT/EP2018/082350,         PCT/GB2018/053551, PCT/GB2018/053556, PCT/GB2018/053553,         PCT/GB2019/050122, PCT/GB2018/053552, PCT/GB2019/051104,         PCT/GB2018/053546, PCT/GB2018/053555, PCT/GB2018/053547,         PCT/GB2018/053554, PCT/GB2018/053548.

It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with at least one feature of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above may also be employed without departing from the scope of the invention, which is defined in the accompanying statements. 

1. A data communication system comprising: a least one encoder; and at least one decoder; wherein the at least one encoder, when in operation, encodes an input signal received thereat into encoded output data; wherein the data communication system includes a data communication network that is coupled to at least one encoder, wherein the data communication network, when in operation, communicates the encoded output data from the at least one encoder to the at least one decoder; wherein the at least one decoder, when in operation, decodes the encoded output data to generate a rendition of the input signal; wherein the data communication network is configured to function according to joint source channel coding (JSCC); wherein the encoder and the decoder are configured to employ an hierarchical data structure for representing data to be communicated from the at least one encoder to the at least one decoder, wherein the hierarchical data structure includes a base layer and one or more enhancement layers with associated residual data, wherein the base layer is capable of providing a coarse rendition of the input signal at the at least one decoder, and the one or more enhancement layers and their associated residual data are useable when received at the least one decoder to enhance the coarse rendition to render the input signal at a high level of quality than the coarse rendition; and wherein the at least one encoder is operable selectively to drop sending parts of data of the one or more enhancement layers and their associated residual data in response bandwidth limitations, ghosting, interference and/or data errors arising in the data communication network.
 2. The data communication system of claim 1, wherein the at least one encoder is configured to send base layer data of a given image frame to the at least one decoder to decode concurrently with the at least one encoder computing enhancement layer data of the given image frame to send subsequently to the at least one decoder, thereby reducing a latency of data communication arising when communicating from the at least one encoder to the at least one decoder.
 3. The data communication system of claim 1, wherein the at least one encoder is configured to drop sending enhancement layer data and resend base layer data of a given image frame in an event that a first transmission of the base layer data of the given image frame is corrupted when transmitted from the at least one encoder to the at least one decoder.
 4. The data communication system of claim 1, wherein the system is configured to spread data of a given Intra-frame of the input signal into a plurality of frame durations when communicated from the at least one encoder to the at least one decoder.
 5. A method of operating a data communication system including a least one encoder and at least one decoder, wherein the at least one encoder, when in operation, encodes an input signal received thereat into encoded output data; wherein the data communication system includes a data communication network that is coupled to at least one encoder, wherein the data communication network, when in operation, communicates the encoded output data from the at least one encoder to the at least one decoder; wherein the at least one decoder, when in operation, decodes the encoded output data to generate a rendition of the input signal, the method comprising: configuring the data communication network to function according to joint source channel coding (JSCC); configuring the encoder and the decoder to employ an hierarchical data structure for representing data to be communicated from the at least one encoder to the at least one decoder, wherein the hierarchical data structure includes a base layer and one or more enhancement layers with associated residual data, wherein the base layer is capable of providing a coarse rendition of the input signal at the at least one decoder, and the one or more enhancement layers and their associated residual data are useable when received at the least one decoder to enhance the coarse rendition to render the input signal at a high level of quality than the coarse rendition; and configuring the at least one encoder, when in operation, selectively to drop sending parts of data of the one or more enhancement layers and their associated residual data in response bandwidth limitations, ghosting, interference and/or data errors arising in the data communication network.
 6. The method of claim 5, wherein the method further comprises configuring the at least one encoder to send base layer data of a given image frame to the at least one decoder to decode concurrently with the at least one encoder computing enhancement layer data of the given image frame to send subsequently to the at least one decoder, thereby reducing a latency of data communication arising when communicating from the at least one encoder to the at least one decoder.
 7. The method of claim 5, wherein the method further comprises configuring at least one encoder to drop sending enhancement layer data and resend base layer data of a given image frame in an event that a first transmission of the base layer data of the given image frame is corrupted when transmitted from the at least one encoder to the at least one decoder.
 8. The method of claim 5, wherein the method further comprises configuring the system to spread data of a given Intra-frame of the input signal into a plurality of frame durations when communicated from the at least one encoder to the at least one decoder.
 9. A computer program product comprising a non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions being executable by a computerized device comprising processing hardware to execute the method of claim
 5. 